Multiple playback local ad rotation

ABSTRACT

According to some aspects, disclosed methods and systems may include storing, in a local storage of a device, a plurality of advertisements; and outputting for display first content comprising a first portion of a first set of advertisements associated with a first campaign period. The disclosed methods and system may also include, in response to an expiration of the first campaign period, outputting for display second content comprising a second portion of the first set of advertisements based on a first set of one or more advertising rules.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Application is a Continuation of application Ser. No. 14/295,843,filed on Jun. 4, 2014, entitled “Multiple Playback Local Ad Rotation,”the entire contents of which are incorporated herein by reference intheir entirety.

BACKGROUND

Content providers have long sought to determine how to maximize revenuederived from advertisements, while minimizing costs associated withbandwidth and network usage. There is an ever-present need to maximizethe amount of advertisements shown to a content user, while minimizingthe use of network resources.

BRIEF SUMMARY

The following presents a simplified summary of the disclosure in orderto provide a basic understanding of some aspects. It is not intended toidentify key or critical elements of the disclosure or to delineate thescope thereof. The following summary merely presents some concepts ofthe disclosure in a simplified form as a prelude to the more detaileddescription provided below.

One or more aspects of the disclosure provide for a method that mayinclude storing, in a local storage of a device, a plurality ofadvertisements; and outputting for display first content comprising afirst portion of a first set of advertisements associated with a firstcampaign period. The method may also include, in response to anexpiration of the first campaign period, outputting for display secondcontent comprising a second portion of the first set of advertisementsbased on a first set of one or more advertising rules.

One or more aspects of the disclosure provide for a method that mayinclude receiving, by a device via a network, content, a set of one ormore advertising rules, and advertisements associated with the contentand the set of one or more advertising rules; and disconnecting, by thedevice, from the network. The method may also include in response toaccessing the content for a first time while disconnected from thenetwork, accessing a first portion of the advertisements based on theset of one or more advertising rules; and in response to accessing thecontent subsequent to the first time while disconnected from thenetwork, accessing a second portion of the advertisements based on theset of one or more advertising rules.

One or more aspects of the disclosure provide for a method that mayinclude storing, in a local storage of a device while the device is inan online state, a plurality of advertisements. The method may alsoinclude, in response to outputting content during a first campaignperiod while the device is in an offline state, outputting for display afirst portion of a set of advertisements associated with the firstcampaign period stored on the device; and in response to outputtingcontent during a second campaign period while the device is in anoffline state, outputting for display a second portion of the set ofadvertisements associated with the second campaign period stored on thedevice.

The details of these and other embodiments of the present disclosure areset forth in the accompanying drawings and the description below. Otherfeatures and advantages of the disclosure will be apparent from thedescription and drawings, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of the present disclosure and theadvantages thereof may be acquired by referring to the followingdescription in consideration of the accompanying drawings, in which likereference numbers indicate like features, and wherein:

FIG. 1 illustrates an example system in which various features discussedherein may be implemented;

FIG. 2 illustrates an example computing device and network environmentthat may be used to implement one or more aspects of the disclosure;

FIG. 3 illustrates an example system for providing content, such asentertainment content and advertising content, from a content service toan application, in accordance with one or more disclosed featuresdescribed herein;

FIG. 4 is a flow diagram illustrating an example process of providingcontent and advertisements from a content service to an application, inaccordance with one or more disclosed features described herein; and

FIG. 5 illustrates a schematic chart showing how advertisements may beinserted into other content, in accordance with one or more featuresdescribed herein.

DETAILED DESCRIPTION

As will be appreciated by one of skill in the art upon reading thefollowing disclosure, various aspects described herein may be embodiedas a method, a computer system, or a computer program product.Accordingly, those aspects may take the form of an entirely hardwareembodiment, an entirely software embodiment or an embodiment combiningsoftware and hardware aspects. Furthermore, such aspects may take theform of a computer program product stored by one or morecomputer-readable storage media having computer-readable program code,or instructions, embodied in or on the storage media. Any suitablecomputer readable storage media may be utilized, including hard disks,CD-ROMs, optical storage devices, removable storage media, solid statememory, RAM, magnetic storage devices, and/or any combination thereof.In addition, the functionality may be embodied in whole or in part infirmware or hardware equivalents, such as integrated circuits, fieldprogrammable gate arrays (FPGAs), and the like. Various signalsrepresenting data or events as described herein may be transferredbetween a source and a destination in the form of electromagnetic wavestraveling through signal-conducting media such as metal wires, opticalfibers, and/or wireless transmission media (e.g., air and/or space).

FIG. 1 illustrates an example communication network 100 on which many ofthe various features described herein may be implemented. The network100 may be any type of information distribution network, such assatellite, telephone, cellular, wireless, etc. One example may be anoptical fiber network, a coaxial cable network, or a hybrid fiber/coaxdistribution network. Such networks 100 use a series of interconnectedcommunication links 101 (e.g., coaxial cables, optical fibers, wireless,etc.) to connect multiple premises 102 (e.g., businesses, homes,consumer dwellings, etc.) to a local office or headend 103. The localoffice 103 may transmit downstream information signals onto the links101, and each premises 102 may have a receiver used to receive andprocess those signals.

There may be one or more links 101 originating from the local office103, and it may be split a number of times to distribute the signal tothe various premises 102 in the vicinity (which may be many miles) ofthe local office 103. The links 101 may include components notillustrated, such as splitters, filters, amplifiers, etc. to help conveythe signal clearly, but in general each split introduces a bit of signaldegradation. Portions of the links 101 may also be implemented withfiber-optic cable, while other portions may be implemented with coaxialcable, other lines, or wireless communication paths. By running fiberoptic cable along some portions, for example, signal degradation may besignificantly minimized, allowing a single local office 103 to reacheven farther with its network of the links 101 than before.

The local office 103 may include an interface 104, such as a terminationsystem (TS). More specifically, the interface 104 may be a cable modemtermination system (CMTS), which may be a computing device configured tomanage communications between devices on the network of the links 101and backend devices such as the servers 105-107 (to be discussed furtherbelow). The interface 104 may be as specified in a standard, such as theData Over Cable Service Interface Specification (DOCSIS) standard,published by Cable Television Laboratories, Inc. (a.k.a. CableLabs), orit may be a similar or modified device instead. The interface 104 may beconfigured to place data on one or more downstream frequencies to bereceived by modems at the various premises 102, and to receive upstreamcommunications from those modems on one or more upstream frequencies.

The local office 103 may also include one or more network interfaces108, which can permit the local office 103 to communicate with variousother external networks 109. These networks 109 may include, forexample, networks of Internet devices, telephone networks, cellulartelephone networks, fiber optic networks, local wireless networks (e.g.,WiMAX), satellite networks, and any other desired network, and thenetwork interface 108 may include the corresponding circuitry needed tocommunicate on the external networks 109, and to other devices on thenetwork such as a cellular telephone network and its corresponding cellphones.

As noted above, the local office 103 may include a variety of servers105-107 that may be configured to perform various functions. Forexample, the local office 103 may include one or more push notificationservers 105. The push notification server 105 may generate pushnotifications to deliver data and/or commands to the various premises102 in the network (or more specifically, to the devices in the premises102 that are configured to detect such notifications).

The local office 103 may also include one or more content servers 106.The content server 106 may be one or more computing devices that areconfigured to provide content to users at their premises. This contentmay be, for example, advertisements (such as commercials), video ondemand movies, television programs, songs, text listings, etc. Thecontent server 106 may include software to validate user identities andentitlements, to locate and retrieve requested content, to encrypt thecontent, and to initiate delivery (e.g., streaming or downloading) ofthe content to the requesting user(s) and/or device(s). The contentserver 106 may also be configured to generate advertising decisions andrules, and transmit them to a requesting user or device.

The local office 103 may also include one or more application servers107. An application server 107 may be a computing device configured tooffer any desired service, and may run various languages and operatingsystems (e.g., servlets and JSP pages running on Tomcat/MySQL, OSX, BSD,Ubuntu, Redhat, HTML5, JavaScript, AJAX and COMET). For example, anapplication server may be responsible for collecting television programlistings information and generating a data download for electronicprogram guide listings. As another example, the application server oranother server may be responsible for monitoring user viewing habits andcollecting that information for use in selecting advertisements. Asanother example, the application server or another server may beresponsible for formatting and inserting advertisements in, for examplea video stream being transmitted to the premises 102. Yet theapplication server or another application server may be responsible forassociating interactive components into and with content and/oradvertisements. Although shown separately, one of ordinary skill in theart will appreciate that the push server 105, the content server 106,and the application server 107 may be combined. Further, here the pushserver 105, the content server 106, and the application server 107 areshown generally, and it will be understood that they may each containmemory storing computer executable instructions to cause a processor toperform steps described herein and/or memory for storing data.

An example premises 102 a, such as a home, may include an interface 120.The interface 120 can include any communication circuitry needed toallow a device to communicate on one or more links 101 with otherdevices in the network. For example, the interface 120 may include amodem 110, which may include transmitters and receivers used tocommunicate on the links 101 and with the local office 103. The modem110 may be, for example, a coaxial cable modem (for coaxial cable lines101), a fiber interface node (for fiber optic lines 101), twisted-pairtelephone modem, cellular telephone transceiver, satellite transceiver,local Wi-Fi router or access point, or any other desired modem device.Also, although only one modem is shown in FIG. 1 , a plurality of modemsoperating in parallel may be implemented within the interface 120.Further, the interface 120 may include a gateway interface device 111.The modem 110 may be connected to, or be a part of, the gatewayinterface device 111. The gateway interface device 111, such as agateway, may be a computing device that communicates with the modem(s)110 to allow one or more other devices in the premises 102 a, tocommunicate with the local office 103 and other devices beyond the localoffice 103. The gateway interface device 111 may be a set-top box,digital video recorder (DVR), computer server, or any other desiredcomputing device. The gateway interface device 111 may also include (notshown) local network interfaces to provide communication signals torequesting entities/devices in the premises 102 a, such as the displaydevices 112 (e.g., televisions), the additional set-top boxes or theDVRs 113, the personal computers 114, the laptop computers 115, thewireless devices 116 (e.g., wireless routers, wireless laptops,notebooks, tablets and netbooks, cordless phones (e.g., Digital EnhancedCordless Telephone—DECT phones), mobile phones, mobile televisions,personal digital assistants (PDA), etc.), the landline phones 117 (e.g.Voice over Internet Protocol—VoIP phones), and any other desireddevices. Examples of the local network interfaces include MultimediaOver Coax Alliance (MoCA) interfaces, Ethernet interfaces, universalserial bus (USB) interfaces, wireless interfaces (e.g., IEEE 802.11,IEEE 802.15), analog twisted pair interfaces, Bluetooth interfaces, andothers.

FIG. 2 illustrates general hardware elements that can be used toimplement any of the various computing devices discussed herein. Thecomputing device 200 may include one or more processors 201, which mayexecute instructions of a computer program to perform any of thefeatures described herein. The instructions may be stored in any type ofcomputer-readable medium or memory, to configure the operation of theprocessor 201. For example, instructions may be stored in a read-onlymemory (ROM) 202, a random access memory (RAM) 203, a removable media204, such as a Universal Serial Bus (USB) drive, compact disk (CD) ordigital versatile disk (DVD), floppy disk drive, or any other desiredstorage medium. Instructions may also be stored in an attached (orinternal) storage 205, such as a hard drive. The computing device 200may include one or more output devices, such as a display 206 (e.g., anexternal television), and may include one or more output devicecontrollers 207, such as a video processor. There may also be one ormore user input devices 208, such as a remote control, keyboard, mouse,touch screen, microphone, etc. The computing device 200 may also includeone or more network interfaces, such as a network input/output (I/O)circuit 209 (e.g., a network card) to communicate with an externalnetwork 210. The network input/output circuit 209 may be a wiredinterface, wireless interface, or a combination of the two. In someembodiments, the network input/output circuit 209 may include a modem(e.g., a cable modem), and the external network 210 may include thecommunication links 101 discussed above, the external network 109, anin-home network, a provider's wireless, coaxial, fiber, or hybridfiber/coaxial distribution system (e.g., a DOCSIS network), or any otherdesired network. Additionally, the device may include alocation-detecting device, such as a global positioning system (GPS)microprocessor 211, which can be configured to receive and processglobal positioning signals and determine, with possible assistance froman external server and antenna, a geographic position of the device.

FIG. 2 shows an example hardware configuration. Modifications may bemade to add, remove, combine, divide, etc., components as desired, andsome or all of the elements may be implemented using software.Additionally, the components illustrated may be implemented using basicdisplay devices and components, and the same components (e.g., theprocessor 201, the ROM 202, the display 206, other input/output devices,etc.) may be used to implement any of the other display devices andcomponents described herein. For example, the various components hereinmay be implemented using display devices having components such as aprocessor executing computer-executable instructions stored on acomputer-readable medium (e.g., the storage 205), as illustrated in FIG.2 .

Having described examples of network environments and contentconsumption devices that may be used in implementing various aspects ofthe disclosure, several examples will now be described in greater detailillustrating how a display device may monitor user actions during anadvertisement, a display device may restrict a user's control of thedisplay device during an advertisement, and efficacy file reports arecreated and used. The consumption device, which may be a user's tabletcomputer, personal computer, smartphone, DVR, or any other computingdevice as described herein, may monitor any client-side interaction withthe user during an advertisement, such as detecting a change in audiolevel or order of display elements. In other examples, the displaydevice may prohibit a user from muting an advertisement during play.

FIG. 3 illustrates a system 300 for providing content, such asentertainment content and advertising content, from a content service toan application, in accordance with one or more disclosed featuresdescribed herein. In particular, the system 300 may include a ContentService 302, which may located or associated with headend 103, and/ormay be a configuration of one or more computing devices or servers, suchas the servers 105, 106, and 107. The Content Service 302 may include aContent Server 304, the Ad Server/Ad Content Delivery Network 306, andthe Remote Ad Decision Server 308. The system 300 may also include anapplication 310, which may be, for example, part of or included in adevice 301, such as a mobile device or computing equipment, which may beassociated with the premises 102. Device 301 may be similar to or thesame as computing device 200, display device 112, modem 110, gatewayinterface 111, landline phone 117, wireless device 116, set-top box/DVR113, personal computer 114, laptop computer 115, or combinationsthereof. The application 310 may be a client application and may includethe Content Receiving Circuitry 312, a Local Ad Decision Logic 314, anEntertainment Content Component 316, an Advertising Content Component318, a Content Player 320, and a Statistical Analysis Logic 322. TheContent Service 302 may be operably connected to the application 310through a network, such as the network 100.

According to some aspects, the application 310 may receive content, suchas video, audio, and advertisements, from the Content Service 302. Forexample, as shown by step 331, content, such as entertainment videocontent (e.g., music, television show episodes, movies, sporting events,etc.), may be transmitted (e.g., streamed or downloaded) from theContent Service 302, such as from the Content Server 304, and stored onthe application 310, such as in the Content Receiving Circuitry 312.

As shown by step 333, advertising decisions, which may be advertisingrules comprising instructions for controlling the accessibility andinsertion of advertising in, for example, entertainment content, may betransmitted (e.g., streamed or downloaded) from the Content Service 302,such as from Remote Ad Decision Server 308, and stored on theapplication 310, such as in the Content Receiving Circuitry 312. Theadvertising rules may contain various configuration settings andinstructions for advertising delivery and playback. For example, therules may include instructions for selecting targeted advertisements fora user and/or device. This will be explained in more detail below. Theconfiguration instructions may be downloaded as part of a contentdownload, such as with entertainment or advertising content, and maycontain various configuration settings and data for the contentdelivery. The configuration data may include information identifying atimeline for the content, and indicating what advertisements arescheduled to be presented, and at what playback times they are to bepresented. The configuration information may also identify an addressfor one or more advertising servers, such as the Ad Server/Ad ContentDelivery Network 306 and the Remote Ad Decision Server 308, which mayreceive reports of the user's advertisement consumption behavior, forexample.

The rules may also allow the application 310 to determine which portionsof the video content constitute advertisements, and may also allow theapplication 310 to determine the viewing parameters to monitor for theadvertisement, such as the whether it is obstructed, audio level, order,and the like. For example, it may be desirable for content providers toobfuscate where advertisements begin and end so that individuals may notconstruct unauthorized devices to detect and bypass the ads. However,the rules may include certain trusted authorities that are provided withdata associated with information concerning when ads start and stopwithin a particular program stream. This may be contained within anencrypted header and/or periodically be disbursed in the program contentstream. It may also be distributed out of band by the content providerand associated with certain content streams. In certain circumstances,the advertisement content information may include time codes, blockframe codes and/or other MPEG data identifying certain segments whichcontain advertisements. This identifying information may then beutilized to push out ads either in real time and/or during DVR and/orVOD playback of the content to keep the ads fresh and current with anadvertising campaign. The rules may include a list of advertisements,the location from where the advertisements may be acquired, as well asthe rules for what, when, and how the advertisements may be played back.The rules may include whether advertisements may be played back multipletimes or only once, whether advertisements can stop playing after anumber of days, or if the advertisements can never stop playing. Therules may also include whether advertisements start on a particular day,such as a particular number of days after download, before and/or aftera particular day, such as a holiday or birthday, and the like. The rulesmay also include a maximum or minimum number of times an advertisementmay be displayed, such as during a piece of content or before theadvertisement is replaced with another advertisement during a refreshingperiod. The rules may also include how advertisements may be displayedwith respect to one another. For example, advertisements from twodifferent car manufacturers may not be played adjacent to one another,and the rules may reflect this (e.g., competitive adjacency). The rulescan also reflect which advertisements the advertisers are paying themost to display, and may provide these advertisements with priority. Therules may also include a location of a user and/or device, and determineadvertisements based on the location. The rules may also includeinformation regarding a type of device and/or a value associated withthe device, and determine whether to play advertisements associated withexpensive/inexpensive products based on the type of device and/or thevalue associated with the device and/or a predicted user of the device.

As shown by step 332, other content, such as advertising content (e.g.,advertisements), may be transmitted (e.g., streamed or downloaded) fromthe Content Service 302, such as from the Ad Server/Ad Content DeliveryNetwork 306, and stored on the application 310, such as in the ContentReceiving Circuitry 312. Advertising content may comprise many kinds ofcontent, such as a video and/or audiovisual advertisement (e.g.,television commercials, movie previews, product or service commercials,etc.), an audio advertisement, a still image advertisement (e.g., a webbanner advertisement), an interactive advertisement (e.g., aninteractive television (ITV) enabled banner advertisement), and/or acombination thereof. For example, advertisement content may includelinear television commercials (e.g., broadcast commercials scheduled toplay at a particular time and on a particular channel), on-demandcommercials (e.g., commercials delivered with video on demand (VOD),video from a digital video recorder (DVR), and/or other advertisementsdynamically inserted in content such as VOD, Linear TV, DVR programs,program guide content, and/or other content such as content displayedusing a web browser application, Internet television player application(e.g., advertisements delivered using an Internet Protocol television(IPTV)), smart phone, tablet, watch, car display, and/or other contentdisplay devices. User devices may run a web browser and/or Internetplayer. Advertisement content displayed in web browsers and/or Internetplayers may include still image advertisements (e.g., a picture, such asa banner advertisement or other mobile advertisement), online videoadvertisements, audio advertisements, and/or combinations thereof.

Any content item (e.g., advertisements, video, audio, image, and thelike) may be available on multiple platforms, such as cell phone-basedplatforms, set top box based platforms, and the like. For example, anadvertisement from a company may be available as a linear televisionadvertisement, an advertisement inserted into a video on demand program,and/or a web banner advertisement. A single location (such as the localoffice 103) may process content items for all of the available types ofplatforms. Alternatively, different locations may process content itemshaving different types of platforms. For example, a content server, suchas the server 106 may handle content items configured to be displayed bya display device of a terminal such as a set-top box 113. These contentitems may include, for example, a video commercial for a lineartelevision show, a video commercial for an on demand movie, and othertypes of content presentable by the terminal. A network server, on theother hand, may handle content items configured to be displayed on a webbrowser application and/or Internet media application running on adevice. These content items may include, for example, web banners,online video clips, and other types of content displayable using a webbrowser or other Internet media application.

By tracking a user's activities throughout multiple platforms, anadvertising server may target an advertising campaign at the user usingmultiple different devices and multiple content streams to deliver aunified and managed advertising campaign tailored to a specific userthrough multiple sources and organized in a coherent manner until acertain predetermined number of impressions of each segment of theadvertising campaign have been presented to a particular user.

Referring again to step 332, the Ad Server/Ad Content Delivery Network306 may use instructions transmitted to the Content Receiving Circuitry312 to determine, for example, which types of advertisements to transmitto the application 310, such as used in a targeting scheme. This will bediscussed in greater detail below. According to some aspects, contenttransmitted from the Content Service 302 may be performed via a network(online state), such as the network 100, and may be performed viacommunication link 101. Alternatively or additionally, after content hasbeen transmitted to the application 310, a device that is associated orincludes the application 310 may be disconnected from the network(offline state), such as the network 100. In this aspect, content andadvertisements may be downloaded and stored on the device 301 and/or theapplication 310

After content, such as entertainment content, advertising content, andadvertising decisions, has been transmitted to the application 310,content may be played back using, for example, the application 310. Forexample, at step 334, advertising decisions may be provided to the LocalAd Decision Logic 314 from the Content Receiving Circuitry 312, at step335, entertainment content may be provided to the Entertainment ContentComponent 316 from the Content Receiving Circuitry 312, and/or at step336, advertising content may be provided to the Advertising ContentComponent 318 from the Content Receiving Circuitry 312. After a user,for example, requests to play a desired piece of content, such as asitcom episode, the Content Player 320 may pull the episode from theEntertainment Content Component 316 shown by step 337, and may begin toplay and display the episode for the user. In response to this requestto play the content, the Content Player 320 may then call (e.g.,function call) the Local Ad Decision Logic 314, shown by step 338, forinstructions regarding, for example, which advertisements to play, whereto insert advertisements in the content, and the like. The Local AdDecision Logic 314 may then examine the advertising rules provided to itby the Content Receiving Circuitry 312 and may instruct Content Player320 based on these rules. Using these instructions, the Content Player320 may select and play advertisements, such as provided by theAdvertising Content Component 318 shown by step 339.

According to some aspects, as shown by step 340, statistical data may becaptured by the application 310, such as by the Statistical AnalysisLogic 322. Statistical data may include data related to a profile of auser, device profile associated with the device, user habits, viewedcontent, device information, stored content, geolocation associated witha user or the device (using, e.g., a GPS device, such as the GPS 211),and the like. Statistical data may also include information derived fromanalyzing which types of content a user has on a device, a frequency ora number of times a user accesses a particular piece of content, and thelike. Statistical data may also include information regardingadvertisements displayed and/or not displayed on, for example, thedevice 301. Additionally, statistical data may include informationregarding which advertisements may have been played while the device 301is in an offline state. In general, statistical data may be anyinformation used in the targeting of advertisements, and may form abasis of the advertising rules that control the display ofadvertisements.

For example, information regarding whether a user has actually watchedan advertisement may be included in the statistical data. This mayinclude information regarding whether a user fast forwarded through anadvertisement, which point during the advertisement the fast forwardingbegan, how much of the advertisement was watched in either a regularspeed, a fast forward speed, or a slow-motion speed, whether a userrewound content to view an advertisement content again, and the like. Inthis aspect, beacon events may be used to determine how much of anadvertisement was played, and this may be used to determine if aparticular advertisement or group of advertisements was actually viewedand/or heard. For example, measurement of data for each of theadvertisement views and a percentage of the advertisement views may bedetermined. For example, if an advertisement lasts 60 seconds, a metricevent may be determined at the 0, 15, 30, 45, and 60 second mark. If abeacon event associated with this advertisement is set to register theadvertisement as being “viewed” at 30 seconds, then when a user, forexample, initiates a fast forwarding of the advertisement at 10 seconds,the metric event taken at the 15 second mark may not satisfy the beaconevent of having viewed the advertisement for 30 seconds (e.g., inregular speed). However, if the user initiates a fast forwarding at 35seconds, then the metric event taken at the 45 second mark will satisfythe beacon event of 30 seconds. Metric events and beacon events may beset to be any specific length or period of time. Additionally, otheraspects besides fast forwarding may be used, such as pausing, slowmotion, rewinding, muting, switching to other content, switching toanother application, turning a device or application on/off, and thelike.

Additionally, statistical data may include information regardinginteractive components associated and/or integrated with content, suchas advertisements (e.g., direct response advertisements). For example,while an advertisement is playing, an interactive component, such as aclickable link or picture, may be integrated with the advertisement. Ifa user accesses, such as by clicking, the link or picture, the user maybe brought to, for example, a website, associated with the advertisementor may be presented with a coupon or discount associated with theadvertisement. Additionally, with regard to the beacon event aspect, ifa user were to access an interactive component before the beacon eventthreshold mark, such as at 15 seconds for a 30 second beacon event inthe previous example, the advertisement may be counted as being“viewed,” and the beacon event may be satisfied. Alternatively, thebeacon event may not be satisfied even if an interactive component mayhave been accessed, and thus may require a metric event be determined ata predetermined second mark.

According to some aspects, as shown by step 341, the StatisticalAnalysis Logic 322 may transmit information, such as statistical data,back to the Content Service 302, such as to the Remote Ad DecisionServer 308. The Statistical Analysis Logic 322 may transmit statisticaldata to the Content Service 302 after the device 301 connects to anetwork. For example, while the device 301 is in an offline state, theStatistical Analysis Logic 322 may collect and store statistical data onthe device 301 and/or the application 310. Stored statistical data maybe locally used by the Local Ad Decision Logic 314 to update some of theadvertising rules stored locally on the device 301 and/or theapplication 310. This aspect will be discussed further below. After someof the advertising rules may have been updated, the Local Ad DecisionLogic 314 may implement these updates, such as in real-time, after asubsequent request to play a piece of content, while a piece of contentis currently playing, while a piece of content is not currently playing,and the like. For example, if statistical data determines that thedevice 301 includes a lot of content associated with sports, then someof the advertisement rules may be modified and/or supplemented toreflect this. The Local Ad Decision Logic 314 may then instruct theContent Player 320 to play advertisements associated with sports either,for example, immediately, at the next advertisement break, at asubsequent time the content is displayed, not at all, and the like. Ifthe device 301 is connected to a network, for example, then the storedstatistical data may be transmitted to the Remote Ad Decision Server308. The Remote Ad Decision Server 308 may then provide updated oradditional rules to the Content Receiving Circuitry 312 based on thestatistical data. For example, as in the above sports example, theRemote Ad Decision Server 308 may transmit to the Content ReceivingCircuitry 312 instructions to play, for example, more advertisementsrelated to sports. Then the Ad Server/Ad Content Delivery Network 306may use these updated rules to determine, for example, which types ofadvertisements to transmit to the Content Receiving Circuitry 312. Theupdated rules may then be used by the Local Ad Decision Logic 314 toinstruct the Content Player 320 to play particular advertisements fromthe Entertainment Content Component 316.

Note that FIG. 3 is merely an example. The configuration of FIG. 3 maybe added to, modified, or rearranged to fit the needs of an advertiser,service provider, and/or display device. The same is true for the otherexamples and processes described herein.

FIG. 4 is an exemplary flow diagram illustrating an example process 400of providing content and advertisements from a content service to anapplication, in accordance with one or more disclosed features describedherein. In one or more embodiments, the process illustrated in FIG. 4and/or one or more steps thereof may be performed by one or morecomputing devices (e.g., the device 301, servers associated with theContent Service 302, and the like). In other embodiments, the processillustrated in FIG. 4 and/or one or more steps thereof may be embodiedin computer-executable instructions that are stored in acomputer-readable medium, such as a non-transitory computer-readablememory. The steps in this flow chart need not all be performed in theorder specified and some steps may be omitted and/or changed in order.

In the example provided, process 400 may begin with step 402, in whichthe device 301 may connect to a network, such as the network 100, whichmay be associated with the Content Service 302. The network may connectthe device 301 to the Content Service 302. For example, the ContentService 302 may transmit information, such as content and rules, to thedevice 301, which may then use an application, such as the application310, to access the content and/or rules.

In step 404, content, such as entertainment content, may be received bythe device 301. This content may be transmitted to the device 301, suchas to the Content Receiving Circuitry 312, from the Content Service 302,such as from the Content Server 304. The content may either bedownloaded by the device 301 and/or streamed from the Content Service302. For example, the content may be delivered and subsequentlydownloaded using a HTTP Live Streaming (HLS) fragmented video format.HLS format may provide an easy modification after a piece of content isdownloaded by the device 301, which may enable the application 310 toinsert, interweave, or “stitch in” advertising or other content into apiece of content (e.g. at the beginning, during, or after the playbackof the content). According to some aspects, the content format compriseslinear video, on demand video, or DVR video. Thus, advertisements can beinserted linearly in the middle of a video based on the advertisingrules. Additional video formats and protocols for delivery may be used,such as FTP, UDP, MPEG, DVB, H.264, and the like.

In some embodiments, the device 301 may download content having anaccessibility period (AP). The accessibility period may be a period oftime or a number of times a piece of content may be played. For example,a piece of content with an accessibility period of two weeks may beviewed for two weeks before having to connect to the Content Service 302to, for example, update a license agreement before continuing to watchthat piece of content. Additionally, a piece of content with anaccessibility period of thirty views may be viewed for thirty timesbefore having to connect to the Content Service 302 to, for example,update a license agreement. Thus, the device 301 may not come backonline (i.e., connect to the Content Service 302), for the entireduration of an accessibility period of a piece of content.

In step 406, advertising rules may be received by the device 301. Theadvertising rules may be transmitted to the device 301, such as to theContent Receiving Circuitry 312, from the Content Service 302, such asfrom the Remote Ad Decision Server 308. The advertising rules may beeither downloaded by the device 301 and/or streamed from the ContentService 302. The advertising rules may contain various configurationsettings and instructions for advertising delivery and playback. Theadvertising rules may interact and/or be associated with the metadata ofadvertisements delivered to the device 301, such as when targeting usingtargeted advertisements. For example, statistical data, such asinformation related to device 310 or a user of device 310, may be usedto create, modify, or supplement advertising rules. The advertisingrules may include instructions on which advertisements to play when thedevice 301 is in an offline state. Thus, as in the above example, wherethe content has an accessibility period, the device 301 may not comeback online for the entire duration of an accessibility period of apiece of content, the advertising rules may be used to determine whichadvertisements to play during the offline period. Thus, if a piece ofcontent has an accessibility period of two weeks, then the rules maydetermine which advertisements to play, for example, for the first threedays, the next three days, the next five days, and so on. Additionally,the rules may determine which advertisements to play based onstatistical data associated with the device 301 and/or a user associatedwith the device 301.

In step 408, advertisements may be received by the device 301. Theadvertisements may be transmitted to the device 301, such as to theContent Receiving Circuitry 312, from the Content Service 302, such asfrom the Ad Server/Ad Content Delivery Network 306. The advertisementsmay be either downloaded by the device 301 and/or streamed from theContent Service 302. The Ad Server/Ad Content Delivery Network 306 maycommunicate with the Remote Ad Decision Server 308 and/or the ContentReceiving Circuitry 312 for advertising rules, and use the advertisingrules to determine which advertisements to transmit to the device 301.The advertisements may include metadata which may be related totargeting, which may be controlled and/or associated with theadvertising rules. Thus, as in the above example, if a piece of contenthas an accessibility period of two weeks and device 302 includes asubstantial amount of content related to sports, then the Ad Server/AdContent Delivery Network 306 may send to the Content Receiving Circuitry312 enough advertisements to cover the entire two week period, and theseadvertisements may include advertisements associated with sports, suchas advertisements related to sports bars, football, and BBQ grills, andthe like. Thus, the application 310 may adapt to different rules to playdifferent advertisements at different times when, for example, in anoffline scenario. Alternatively or additionally, the above recited stepsmay be performed for advertisements that are streamed to the device 301through a network from, for example, the Content Service 302.

In step 410, the device 301 and/or the application 310 may optionallydisconnect from the network or be disconnected from each other in anyother way. Alternatively or additionally, the device 301 and/or theapplication 310 may optionally disconnect or connect to a network (oreach other in any other way) after any of the steps in process 400.

In step 412, the application 310 may optionally collect statisticaldata, for example by using the Statistical Analysis Logic 322.Statistical data may be used to create advertisements and/or advertisingrules personalized or specific for a device or user associated with adevice. Statistical data may include, data related to a profile of auser, device profile associated with the device, user habits, viewedcontent, device information, stored content, geolocation associated witha user or the device (using, e.g., a GPS device, such as the GPS 211).Statistical data may also include information derived from analyzingwhich types of content a user has on a device, a frequency or a numberof times a user accesses a particular piece of content, and the like.Statistical data may also include information regarding advertisementsdisplayed and/or not displayed on, for example, the device 301.Additionally, statistical data may include information regarding whichadvertisements may have been played while the device 301 is in anoffline state

Additionally, statistical data may optionally be collected whiledisconnected or connected from the network, and may be collected afterany of the steps in process 400.

At step 414, a request to play content, such as entertainment content,may be received by the application 310. For example, a user may downloadan episode of a sitcom, such as from the Content Server 304, and then aday later, may decide to display and view the episode using theapplication 310 on the device 301. A user may then select the episode towatch. The device 301 may be in an online or offline state when a userrequests to play content. As stated above, a piece of content may beassociated with an accessibility period, which may limit the amount oftime or number of views associated with the content. Thus, if a userselects to display the content within the accessibility period, then thecontent may be displayed to the user. If a user selects to display thecontent outside of the accessibility period, then the content may not bedisplayed to the user.

At step 416, it may be determined whether the request to play thecontent was made during a campaign period associated with the content. Acampaign period may be associated with a measurement model used forbroadcasters and video publishers, such that credit or currency may begiven for content (such as advertising) while being broadcasted (i.e.,live over TV), and subsequently on platforms that allow for streamingand/or downloading of the content after it has been broadcasted (i.e.,on-demand, DVR, subscription based download, etc.) For example, after ashow has been broadcasted, the show may be implemented for on-demand orDVR services on, for example, a digital platform. Thus, any viewing of apiece of content that takes place within the campaign period may counttoward the credit or currency associated with the piece of content. Thecredit or currency may be, for example, used in determining how much tocharge for a piece of content. A campaign period may be associated withany content. For example, a C3 campaign period metric may correspond toa time period of three days (72 hours) after a piece of content, such asa show, has been broadcasted. C5 may correspond to a period of 5 days,and so on. After the expiration of the 72 hours, a C3 campaign periodmay end. Thus, if a user requests to play the show within the C3campaign period of 72 hours after broadcast, then the request is madeduring the campaign period. Alternatively, the campaign period can havea predetermined start and end date for a validity period.

Additionally or alternatively to the campaign period being a period oftime, the campaign period may be set at a number of “displays” of thecontent. For example, for a piece of content having a campaign period oftwelve “displays,” the user may request that piece of content up totwelve times, and still be considered to have made the request withinthe campaign period. If, for example, the user requests the content athirteenth time, the thirteenth request may be considered outside of thecampaign period, because the campaign period may have expired after thetwelfth request. In some embodiments, it may be determined that arequest of a piece of content may not count as a “display” until a userhas viewed a particular percentage of the content and/or advertisementsassociated with the content. In one example, a device may need to play66% of the content and/or advertisements associated with the content tobe considered a “display.” However, any such percentage may apply.

Additionally or alternatively, some of the advertisements transmitted tothe device 301 from the Ad Server/Ad Content Delivery Network 306 may beassociated with the campaign period and some may not be associated withthe campaign period. For example, an advertisement may be associatedwith the campaign period if it was played during the original broadcast.In another example, an advertisement may be associated with the campaignperiod if the advertising rules specify that the advertisement may beplayed during the campaign period.

Further, an advertisement not associated with a campaign period may beplayed after expiration of the campaign period. For example, afterdownloading a piece of content, the advertising rules maydetermine/instruct that three advertisement breaks are needed for thatpiece of content, and the Ad Server/Ad Content Delivery Network 306 maysend three pods of advertisements to the application 310—a pre-roll podof advertisements for before the content, a mid-roll pod ofadvertisements for during the content, and a post-roll pod ofadvertisements for after the content. Each pod may be composed of 4advertisements, for example. One skilled in the art would recognize thatany number of pods and/or advertisements per pod may be used with thefeatures disclosed herein and that advertisements may be inserted intocontent at any insertion point in the content and not just the threelisted above. Thus, in one example, the Remote Ad Decision Server 308may determine that the content has an accessibility period of one week,and has a campaign period of three days (C3). The Remote Ad DecisionServer 308 may then transmit rules based on this information to theContent Receiving Circuitry 312, and the Ad Server/Ad Content DeliveryNetwork 306 may then send advertisements to the Content ReceivingCircuitry 312 based on these rules. For example, the Ad Server/AdContent Delivery Network 306 may send 24 advertisements to the ContentReceiving Circuitry 312, with 12 initial advertisements (i.e., threepods of four advertisements each) being associated with the campaignperiod of C3, and may send 12 subsequent advertisements that may not beassociated with the campaign period of C3. Thus, for any requestsreceived by the application 310 to display this content within the C3campaign period, at least a portion of the 12 initial advertisements maybe inserted into the content and displayed. For any requests received atthe expiration of the C3 campaign period (i.e., post 72 hours afterbroadcast), at least a portion of the 12 secondary advertisements may beinserted into the content and displayed. In some embodiments, theadvertisements associated with the campaign period (e.g., the 12 initialadvertisements as in the above example) may constitute advertisementsthat may not have been broadcasted. In some embodiments, theadvertisements played after the expiration of the campaign period (e.g.,the 12 secondary advertisements as in the above example) may compriseadvertisements associated with the campaign period. For example, if itis determined that the device 301 includes a substantial amount ofsports content, then a sports advertisement associated with the campaignperiod may be played after the expiration of the campaign period (i.e.,a targeted advertisement). This may be implemented using statisticaldata, a modification of the advertising rules, and the like.Additionally, in some embodiments, the advertisements that are notassociated with the campaign period may be associated with the campaignperiod. For example, if it is determined that the device 301 includes asubstantial amount of sports content, then a sports advertisement notassociated with the campaign period may be played during the campaignperiod (i.e., a targeted advertisement).

If it is determined at step 416 that the request for content is within acampaign period associated with the content, then the process continuesto step 418. In step 418, advertisements associated with the campaignperiod may be played and displayed, such as described in the aboveexamples. After playing the requested content and the advertisements,the process returns to step 412 to collect statistical data. Thestatistical data may include any of the information described above. Thestatistical data may include, for example, information regarding howmany times the user played a piece of content within a campaign period,how long the user displayed the content for each request, whether theuser selected an interactive component of an advertisement, whether theuser has downloaded/accessed any additional content, and the like. Theprocess then continues through steps 414-416. If it is determined atstep 416 that the request for content is outside of a campaign periodassociated with the content, then the process continues to step 420.

In step 420, statistical data may be collected again. The statisticaldata may include any of the information described above. The statisticaldata may include, for example, information regarding how many times theuser played a piece of content within a campaign period, how long theuser displayed the content for each request, whether the user selectedan interactive component of an advertisement, whether the user hasdownloaded/accessed any additional content, and the like.

In step 422, it may be determined whether the device 301 and/or theapplication 310 may be connected to a network and/or to the ContentService 302. If it is determined at step 422 that the device may be inan online state, then the process continues to step 424. At step 424,any portion of the collected statistical data may be, for example,transmitted to the Content Service 302, such as to the Remote AdDecision Server 308. Then process 400 continues to step 426. If it isdetermined at step 422 that the device may be in an offline state, thenthe process continues to 426. One skilled in the art would recognizethat the device 301 may be connected to the network at any time, and itis not required to be at any specific time or in the order shown in FIG.4 .

At step 426, advertising rules, such as on Remote Ad Decision Server 308or the Local Ad Decision Logic 314, may be revised, modified,supplemented, or added based on, for example, the statisticalinformation. Step 426 may be performed in an offline or online state.For example, if a user continues to watch a child's show over and over,then the rules may be updated to reflect this (i.e., based on a user'sviewing habits), and may modify the rules to indicate playing morebranding advertising instead of direct response advertising. In someembodiments, no modification may be needed (e.g., because a child maynot be able to respond to a direct response advertisement and/or may notunderstand a direct response advertisement). The Local Ad Decision Logic314 may then instruct Content Player 320 to play advertisements during asubsequent display of the content using either the modified advertisingrules (step 428) or unmodified advertising rules (step 430).

In step 432, statistical data may be collected again. At step 434, it isdetermined whether any items, such as content, rules, and/oradvertisements are to be updated and/or refreshed by the Content Service302. If it is determined at step 434 that there may be no update, thenthe process returns to step 414. At step 414, the process may continuewith a previous campaign period or with a subsequent campaign period.Please note, even though the campaign period may have expired, thecampaign period may be extended based on the collected statistical data.For example, if it is determined that the user has a substantial amountof sports related content on the device, and there are one or moresports related advertisements associated with the first campaign periodon the device, then the application 310 may extend the campaign period(such as using updated/revised advertising rules) to play the sportsrelated advertisements. Additionally, based on the rules, advertisementsmay become associated with a campaign period. For example, if isdetermined that a user's device has a substantial amount of sportsrelated content, then advertisements related to sports that were notpreviously associated with a campaign period, may become associated witha campaign period using the advertising rules. Alternatively oradditionally, the sports related advertisements associated with thecampaign period may be played after the expiration of the campaignperiod.

If it is determined at step 434 that any items, such as content, rules,and/or advertisements are to be updated by the Content Service 302, theprocess continues to step 436. At step 436, the device 301 and/or theapplication 310 may connect to the network and/or the Content Service302. At step 438, statistical data may be transmitted to the Remote AdDecision Server 308, which may be used to update advertising rules whichmay be used for advertising decisions. At step 440, updates may beimplemented on the Content Service 302 using, for example, the storedstatistical data. The process then returns to step 404, where the device301 may receive content from the Content Service 302.

Note that FIG. 4 is merely an example. The steps of FIG. 4 may be added,modified, removed, combined, divided, or rearranged to fit the needs ofan advertiser or display device. The same is true for the other examplesand processes described herein.

FIG. 5 illustrates a schematic chart 500 showing how advertisements maybe stitched-in, interweaved, and/or inserted into content, in accordancewith one or more features described herein. The chart 500 may includethe advertisement/content segments, 502, 514, and 526, which mayillustrate a displaying of advertisements and content at differenttimes. The segment 502 may include one or more advertisement pods, suchas the pods 504, 508, and 512, and one or more content parts 506 a and506 b. The segment 514 may include one or more advertisement pods, suchas pods 516, 520, and 524, and one or more content parts 506 a and 506b. The segment 526 may include one or more advertisement pods, such aspods 528, 532, and 536, and one or more content parts 506 a and 506 b.The content parts 506 a and 506 b may be different parts of a singlepiece of content, such as two parts of an episode of a sitcom. The oneor more advertisement pods may include one or more advertisements, andmay include an equal or non-equal number of advertisements in each pod.For example, the pod 504 may include 6 advertisements, pod 508 mayinclude 5 advertisements, and pod 512 may include 1 advertisement.

As stated above, the pods 504, 508, 512, 516, 520, 524, 528, 532, and536 and the content parts 506 a and 506 b may be downloaded on a device,such as the device 301, and used by an application, such as theapplication 310. In one example, the segment 502 may be associated witha campaign period, such as the C3 metric described above. Thus, for aperiod of three days from the content's broadcast, advertisements shownin the segment 502 may be associated with the C3 metric. After theexpiration of the three days, a playback sequence may resemble thesegment 514, in which a new set of pods, which may or may not includesome of the advertisements associated with the C3 metric, may beinserted into content and displayed. Advertisements associated with thesegment 514 may be associated with a different campaign period, such asa campaign period of displaying the content a predetermined number oftimes (e.g., 1, 2, 15, or 200 times, etc.). It is noted thatadvertisements may be associated with multiple campaign periods.Advertisements may also be displayed and/or reused based on campaignperiod, statistical data, advertising rules, and the like. Further, theadvertisements associated with the segment 514 may not be associatedwith a campaign period. Additional advertisements may be displayed basedon, for example, statistical data. As stated above, advertisements maybe reused after the expiration of a campaign and/or at a different timeperiod. Advertisements in the segment 526, for example, may occursubsequent to any campaign periods associated with the segments 502and/or 514, and may contain a portion of the advertisements used in thesegments 502 and/or 514.

In some embodiments, the pods 504, 508, and 512 may be received by thedevice 301 as a first set of advertisements, the pods 516, 520, and 524may be received as a second set of advertisements, and the pods 528,532, and 536 may be received as an “ith” set of advertisements. Thefirst set of advertisements may be interwoven into content, such as thecontent parts 506 a and 506 b. At another time period, the second set ofadvertisements may be interwoven into content, such as the content parts506 a and 506 b. At another time period, the ith set of advertisementsmay be interwoven into content, such as the content parts 506 a and 506b. In such embodiments, the device 301 and/or the application 310 may ormay not be connected to a content service, such as the Content Service302, and/or to a network, such as the network 100, which may beassociated with a content service, such as the Content Service 302.

In accordance with one or more of the features described herein, contentmay be downloaded to a device, such as the device 301. The content maybe subscription based, such as a user or device subscribing to a premiumchannel or service. Content may be downloaded and then played for apredetermined time period while the device may not be connected to anetwork. The device may not come back online for the entire duration ofthe accessibility of that content. Once reconnected to the network, thecontent may be refreshed, and the offline viewing period may beextended. Thus, there may be a long duration of time in which a devicemay not be able to obtain fresh content. Thus multiple advertising loadsfor a single content asset may be downloaded, such as at a single timeor during multiple times, and can be selected for display in a piece ofcontent at different times while the device is offline. Advertisementmay have different periods of validity, and after a period of validity,advertisements may or may not be shown again. When a device is offline,there may not be a way to call a remote advertisement service todetermine which advertisements to play. Advertising decisions may needto be made in real-time and on demand. Thus, when playing a piece ofcontent on a streaming service, part of the communication received bythe device may include decisions regarding which advertisements to playfor the content that is about to be played. These decisions can bereceived from, for example, a remote advertisement server or from alocal advertisement decision service resident on a device, where thelocal advertisement decision service may use rules that have beendownloaded to the device. The local advertisement decision service mayinstruct a content player to play advertisements stored on the device.The local advertisement decision service may provide various types ofadvertisement responses to adapt to different rules to play differentadvertisements at different times in an offline scenario. Advertisementsstored on a device may be selected on the basis of stored content on thedevice. These advertisements then may be dynamically inserted intocontent, such as content stored on the device, based on advertisingrules. Alternatively, the local advertisement decision service mayinstruct a content player to play advertisements streamed to the device.

In accordance with one or more of the features described herein, a pieceof content may be played multiple times in an offline content, andadvertisements displayed with that content may be changed duringdifferent display periods for the context. Multiple advertisement loadsmay be downloaded and stored along with advertising rules that may beassociated with the downloaded advertisements. The rules may determine,for example, the way in which advertisements may be rotated. Theplayback device may respond to those rules and replace theadvertisements according to those rules when the content is playedmultiple times.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

The invention claimed is:
 1. A method comprising: storing, in a localstorage of a device in an online state: video content for offlineoutput; a plurality of interactive advertisements; and for eachinteractive advertisement of the plurality of interactiveadvertisements: information indicating a corresponding time periodduring which the interactive advertisement is to be output; andinformation indicating a threshold quantity of interactions foradjusting the corresponding time period while the device is in anoffline state; causing, while the device is in the offline state andduring a first time period, first offline output of a first portion ofthe video content with a first interactive advertisement of theplurality of interactive advertisements; receiving, while the device isin the offline state, a quantity of offline user interactions with thefirst interactive advertisement; and causing, after the first timeperiod, based on determining that the quantity of offline userinteractions satisfies the threshold, and while the device is in theoffline state, second offline output of a second portion of the videocontent with a second interactive advertisement of the plurality ofinteractive advertisements.
 2. The method of claim 1, furthercomprising: collecting, while the device is in the offline state,statistical data based on one or more of a profile of a user, a deviceprofile associated with the device, user habits, viewed content, storedcontent, or a geolocation associated with the device.
 3. The method ofclaim 1, further comprising: determining, while the device is in theoffline state, user content stored on the device; and updating, by thedevice, based on the user content, and while the device is in theoffline state, one or more advertising rules, wherein in the secondoffline output of the second portion of the video content, the secondportion of the video content is output with the second interactiveadvertisement based on the updated one or more advertising rules.
 4. Themethod of claim 1, wherein in the second offline output of the secondportion of the video content, the second portion of the video content isoutput with the second interactive advertisement instead of the firstinteractive advertisement.
 5. The method of claim 1, wherein the firsttime period is determined based on the first interactive advertisement,of the plurality of interactive advertisements, being output apredetermined number of times.
 6. The method of claim 1, wherein thesecond interactive advertisement of the plurality of interactiveadvertisements is determined based on determining a quantity of thefirst interactive advertisement has been played.
 7. The method of claim1, further comprising: configuring the first time period as apredetermined period of time measured subsequent to an initial broadcastof the video content, wherein the plurality of interactiveadvertisements comprise advertisements broadcasted during the initialbroadcast of the video content.
 8. The method of claim 1, furthercomprising: prior to the storing the plurality of interactiveadvertisements, streaming the first interactive advertisement of theplurality of interactive advertisements via a network, wherein thecausing the second offline output of the second portion of the videocontent further comprises: accessing the second interactiveadvertisement of the plurality of interactive advertisements from thelocal storage of the device.
 9. The method of claim 1, wherein the firsttime period is determined based on a comparison of: a genre associatedwith the first interactive advertisement; and a genre associated with acontent item stored in the local storage of the device.
 10. The methodof claim 1, wherein causing the second offline output of the secondportion of the video content is based on determining that an amount oftime, associated with the user interactions with the first interactiveadvertisement while the device is in the offline state, satisfies athreshold value.
 11. The method of claim 1, further comprising:increasing the first time period by different amounts corresponding todifferent types of offline interactions with the first interactiveadvertisement.
 12. The method of claim 1, wherein the second interactiveadvertisement is further determined based on a type of the videocontent.
 13. The method of claim 1, further comprising: causing, whilethe device is in the online state and after an original expiration dateof the first time period, a further output of the first interactiveadvertisement.
 14. An apparatus comprising: one or more processors; andmemory storing instructions that, when executed by the one or moreprocessors, cause the apparatus to: store, in a local storage of theapparatus in an online state: video content for offline output; aplurality of interactive advertisements; and for each interactiveadvertisement of the plurality of interactive advertisements:information indicating a corresponding time period during which theinteractive advertisement is to be output; and information indicating athreshold quantity of interactions for adjusting the corresponding timeperiod while the apparatus is in an offline state; cause, while theapparatus is in the offline state and during a first time period, firstoffline output of a first portion of the video content with a firstinteractive advertisement of the plurality of interactiveadvertisements; receive, while the apparatus is in the offline state, aquantity of offline user interactions with the first interactiveadvertisement; and cause, after the first time period, based ondetermining that the quantity of offline user interactions satisfies thethreshold, and while the apparatus is in the offline state, secondoffline output of a second portion of the video content with a secondinteractive advertisement of the plurality of interactiveadvertisements.
 15. The apparatus of claim 14, wherein the instructions,when executed by the one or more processors, cause the apparatus to:collect, while the apparatus is in the offline state, statistical databased on one or more of a profile of a user, a device profile associatedwith the apparatus, user habits, viewed content, stored content, or ageolocation associated with the apparatus.
 16. The apparatus of claim14, wherein the instructions, when executed by the one or moreprocessors, cause the apparatus to: determine, while the apparatus is inthe offline state, user content stored on the apparatus; and update,based on the user content and while the apparatus is in the offlinestate, one or more advertising rules, wherein in the second offlineoutput of the second portion of the video content, the second portion ofthe video content is output with the second interactive advertisementbased on the updated one or more advertising rules.
 17. The apparatus ofclaim 14, wherein in the second offline output of the second portion ofthe video content, the second portion of the video content is outputwith the second interactive advertisement instead of the firstinteractive advertisement.
 18. The apparatus of claim 14, wherein thefirst time period is determined based on the first interactiveadvertisement of the plurality of interactive advertisements beingoutput a predetermined number of times.
 19. The apparatus of claim 14,wherein the second interactive advertisement of the plurality ofinteractive advertisements is determined based on determining a quantityof the first interactive advertisement has been played.
 20. Theapparatus of claim 14, wherein the instructions, when executed by theone or more processors, cause the apparatus to: configure the first timeperiod as a predetermined period of time measured subsequent to aninitial broadcast of the video content, wherein the plurality ofinteractive advertisements comprise advertisements broadcasted duringthe initial broadcast of the video content.
 21. The apparatus of claim14, wherein the instructions, when executed by the one or moreprocessors, cause the apparatus to: prior to the storing the pluralityof interactive advertisements, stream the first interactiveadvertisement of the plurality of interactive advertisements via anetwork, wherein the causing the second offline output of the secondportion of the video content further comprises: accessing the secondinteractive advertisement of the plurality of interactive advertisementsfrom the local storage of the apparatus.
 22. The apparatus of claim 14,wherein the first time period is determined based on a comparison of: agenre associated with the first interactive advertisement; and a genreassociated with a content item stored in the local storage of theapparatus.
 23. The apparatus of claim 14, wherein the instructions, whenexecuted by the one or more processors, cause the apparatus to: causethe second offline output of the second portion of the video contentbased on determining that an amount of time, associated with the userinteractions with the first interactive advertisement while theapparatus is in the offline state, satisfies a threshold value.
 24. Theapparatus of claim 14, wherein the instructions, when executed by theone or more processors, cause the apparatus to: increase the first timeperiod by different amounts corresponding to different types of offlineinteractions with the first interactive advertisement.
 25. The apparatusof claim 14, wherein the instructions, when executed by the one or moreprocessors, cause the apparatus to: determine the second interactiveadvertisement based on a type of the video content.
 26. The apparatus ofclaim 14, wherein the instructions, when executed by the one or moreprocessors, cause the apparatus to: cause, while the apparatus is in theonline state and after an original expiration date of the first timeperiod, a further output of the first interactive advertisement.
 27. Anon-transitory computer-readable medium having stored thereoncomputer-executable instructions that, when executed, cause: storing, ina local storage of a device in an online state: video content foroffline output; a plurality of interactive advertisements; and for eachinteractive advertisement of the plurality of interactiveadvertisements: information indicating a corresponding time periodduring which the interactive advertisement is to be output; andinformation indicating a threshold quantity of interactions foradjusting the corresponding time period while the device is in anoffline state; causing, while the device is in the offline state andduring a first time period, first offline output of a first portion ofthe video content with a first interactive advertisement of theplurality of interactive advertisements; receiving, while the device isin the offline state, a quantity of offline user interactions with thefirst interactive advertisement; and causing, after the first timeperiod, based on determining that the quantity of offline userinteractions satisfies the threshold, and while the device is in theoffline state, second offline output of a second portion of the videocontent with a second interactive advertisement of the plurality ofinteractive advertisements.
 28. The non-transitory computer-readablemedium of claim 27, wherein the computer-executable instructions furthercause: collecting, while the device is in the offline state, statisticaldata based on one or more of a profile of a user, a device profileassociated with the device, user habits, viewed content, stored content,or a geolocation associated with the device.
 29. The non-transitorycomputer-readable medium of claim 27, wherein the computer-executableinstructions further cause: determining, while the device is in theoffline state, user content stored on the device; and updating, by thedevice, based on the user content, and while the device is in theoffline state, one or more advertising rules, wherein in the secondoffline output of the second portion of the video content, the secondportion of the video content is output with the second interactiveadvertisement based on the updated one or more advertising rules. 30.The non-transitory computer-readable medium of claim 29, wherein in thesecond offline output of the second portion of the video content, thesecond portion of the video content is output with the secondinteractive advertisement instead of the first interactiveadvertisement.
 31. The non-transitory computer-readable medium of claim27, wherein the first time period is determined based on the firstinteractive advertisement of the plurality of interactive advertisementsbeing output a predetermined number of times.
 32. The non-transitorycomputer-readable medium of claim 27, wherein the second interactiveadvertisement of the plurality of interactive advertisements isdetermined based on determining a quantity of the first interactiveadvertisement has been played.
 33. The non-transitory computer-readablemedium of claim 27, wherein the computer-executable instructions furthercause: configuring the first time period as a predetermined period oftime measured subsequent to an initial broadcast of the video content,wherein the plurality of interactive advertisements compriseadvertisements broadcasted during the initial broadcast of the videocontent.
 34. The non-transitory computer-readable medium of claim 27,wherein the computer-executable instructions further cause: prior to thestoring the plurality of interactive advertisements, streaming the firstinteractive advertisement of the plurality of interactive advertisementsvia a network, wherein the causing the second offline output of thesecond portion of the video content further comprises: accessing thesecond interactive advertisement of the plurality of interactiveadvertisements from the local storage of the device.
 35. Thenon-transitory computer-readable medium of claim 27, wherein the firsttime period is determined based on a comparison of: a genre associatedwith the first interactive advertisement; and a genre associated with acontent item stored in the local storage of the device.
 36. Thenon-transitory computer-readable medium of claim 27, wherein causing thesecond offline output of the second portion of the video content isbased on determining that an amount of time, associated with the userinteractions with the first interactive advertisement while the deviceis in the offline state, satisfies a threshold value.
 37. Thenon-transitory computer-readable medium of claim 27, wherein thecomputer-executable instructions further cause: increasing the firsttime period by different amounts corresponding to different types ofoffline interactions with the first interactive advertisement.
 38. Thenon-transitory computer-readable medium of claim 27, wherein the secondinteractive advertisement is further determined based on a type of thevideo content.
 39. The non-transitory computer-readable medium of claim27, wherein the computer-executable instructions further cause: causing,while the device is in the online state and after an original expirationdate of the first time period, a further output of the first interactiveadvertisement.